Digital filtering methods and devices

ABSTRACT

In order to transform an input digital signal (x n ) into one or more output digital signals (y n ) containing even-indexed samples (y 2n ) and odd-indexed samples (y 2i+n ), this filtering method includes at least one iteration ( 506 ) which contains an operation of modifying even-indexed samples (y 2n ) by a function (R) of weighted odd-indexed samples (α 0,j ·y 2n+mj ) and an operation of modifying odd-indexed samples (y 2n+1 ) by means of a function (R) of weighted even-indexed samples (β 0,j ·(y 2n −y 2n+2 )). The weighted samples are obtained by means of at least one weighting operation. At least one of the weighting operations is applied to the difference between two consecutive even-indexed samples.  
     Application to the processing of images.

[0001] The present invention relates to digital filtering methods anddevices.

[0002] It finds an advantageous application to the filtering of digitalimages, in particular for the compression of images in accordance with“JPEG 2000”, currently being drafted.

[0003] Two techniques are notably known for implementing the filteringof digital signals using wavelet filters:

[0004] filtering by convolution, and

[0005] filtering by “lifting”.

[0006] A few elementary concepts on wavelet filters, and then onlifting, are given below.

[0007] It is known that the wavelet filtering of a monodimensionalsignal X_(i) can be defined as:

[0008] the convolution of a low-pass filter H₀(k) with the signal X_(i),the signal Y_(n) resulting from the convolution being downsampled by afactor of two: $\begin{matrix}{Y_{2n} = {\sum\limits_{k}{{H_{0}(k)} \cdot X_{{2n} - k}}}} & (1)\end{matrix}$

[0009] and

[0010] the convolution of a high-pass filter H₁(k) with the signalX_(i), the signal Y_(n) resulting from the convolution being downsampledby a factor of two: $\begin{matrix}{Y_{{2n} + 1} = {\sum\limits_{k}{{H_{1}(k)} \cdot X_{{2n} + 1 - k}}}} & (2)\end{matrix}$

[0011] The result of the filtering, referred to as a wavelet filteringoperation (H₀, H₁), produces a signal Y_(i), in which each even-indexedsample Y_(2n) is a low-pass coefficient and each odd-indexed odd-indexedsample Y_(2n+1) is a high-pass coefficient.

[0012] The low-pass filter and the high-pass filter must satisfy certainconditions, referred to as perfect reconstruction conditions, so thatthe perfect reconstruction of the signal X_(i) from the signal Y_(i) ispossible.

[0013] If the notation of the z transform is used for the finite impulseresponse filters, namely $\begin{matrix}{{{H_{i}(z)} = {\sum\limits_{k}{{H_{i}(k)} \cdot z^{- k}}}},} & (3)\end{matrix}$

[0014] then the perfect reconstruction condition which the filters mustsatisfy is:

H ₀(z)·H₁(−z ⁻¹)+H ₀(−z)·H ₁(z ⁻¹)=2  (4)

[0015] It is known that some wavelet filters have symmetry properties.

[0016] An odd-length symmetric wavelet filter H(k) or WSS (Whole-SampleSymmetric) filter is defined by the following equation, referred to asWSS symmetry, between all the coefficients of the filter:

∀k, H(−k)=H(k)  (5)

[0017] An even-length symmetric wavelet filter or HSS (Half-SampleSymmetric) filter is defined by the following equation, referred to asHSS symmetry, between all the coefficients of the filter:

∀k, H(−k)=H(k+1).  (6)

[0018] An even-length antisymmetric wavelet filter or HSA (Half-SampleAntisymmetric) filter is defined by the following equation, referred toas HSA symmetry, between all the coefficients of the filter:

∀k, H(−k)=−H(k+1).  (7)

[0019] The technique of lifting, mentioned above, consists ofimplementing a filtering step by decomposing it into an equivalentsequence of elementary filtering operations, referred to as liftingsteps. This decomposition is referred to as lifting factorisation. Formore details on lifting factorisation, reference can usefully be made tothe article by Ingrid DAUBECHIES and Wim SWELDENS entitled “Factoringwavelet transforms into lifting steps”, in J. Fourier Anal. Appl., vol.4, No. 3, pages 247 to 269, 1998.

[0020] It should be stated in particular that, when a filteringoperation is performed in the form of lifting steps, in order totransform a signal X_(i) into a signal Y_(i), it is generally begun bycopying all the samples of the signal X_(i) into the signal Y_(i) (i.e.Y_(i)=X_(i)), and then the even-indexed samples and the odd-indexedsamples of the signal Y_(i) are modified alternately.

[0021] There are two types of lifting step:

[0022] high-pass lifting steps, and

[0023] low-pass lifting steps

[0024] A high-pass lifting step consists of modifying odd-indexedsamples by adding to them a sample function of even-indexed sampleswhich are weighted or filtered: $\begin{matrix}{{\forall n},{Y_{{2n} + 1} = {Y_{{2n} + 1} + {R\left( {\sum\limits_{k}{a_{k} \cdot Y_{{2n} + {2k}}}} \right)}}}} & (8)\end{matrix}$

[0025] The function R is, in general terms, any approximation of thevariable x. The function R can be a rounding operator which rounds areal value x to an integer (such as the closest integer), or can simplybe identity: R(x)=x.

[0026] A low-pass lifting step consists of modifying even-indexedsamples (low-pass) by adding to them a function of odd-indexed sampleswhich are weighted or filtered: $\begin{matrix}{{\forall n},{Y_{2n} = {Y_{2n} + {R\left( {\sum\limits_{k}{b_{k} \cdot Y_{{2n} + {2k} + 1}}} \right)}}}} & (9)\end{matrix}$

[0027] In the case where R(x)=x, at each lifting step, each low-passsample Y_(2n) can be expressed in the form of a linear combination ofsamples of the signal X_(i), corresponding to a low-pass filtering ofthe signal X_(i). Thus each low-pass lifting step can be associated witha low-pass filter.

[0028] It is said that each low-pass lifting step lifts a low-passfilter (one which is associated with the previous low-pass lifting step)into another low-pass filter (the one which is associated with thecurrent low-pass lifting step). The term lifting accounts for the factthat the support of the resulting low-pass filter (that is to say thenumber of coefficients of the filter) is greater than that of thecorresponding low-pass filter at the previous step. The low-pass filterwith the larger support finally obtained by lifting is called the“equivalent low-pass filter”.

[0029] The same applies to the high-pass filters and the lifting steps,that is to say each high-pass lifting step can be seen as the lifting ofa high-pass filter into a high-pass filter with a larger support,referred to as the “equivalent high-pass filter”.

[0030] The same terminology is used in the case where the approximationfunction R is not identity.

[0031] Thus the lifting-based implementation of a wavelet filteringoperation (H₀, H₁) can be seen as a sequence of operations during which,alternately and iteratively, low-pass filters are lifted into equivalentlow-pass filters with a larger support, and high-pass filters are liftedinto equivalent high-pass filters with a larger support, until thelow-pass filter is equal to H₀ and the high-pass filter is equal to H₁.

[0032] Several types of symmetry are also encountered in the liftingsteps:

[0033] there are two types of symmetric lifting steps:

[0034] lifting steps with WSS symmetry, and

[0035] lifting steps with HSS symmetry; and

[0036] there are two types of antisymmetric lifting steps:

[0037] lifting steps with WSA antisymmetry, and

[0038] lifting steps with HSA antisymmetry.

[0039] An odd-length symmetric lifting or WSS lifting (“Whole-SampleSymmetric lifting”) step is defined by a WSS symmetry relationshipbetween the filtering coefficients of the lifting step:

a _(−k) =ak  (10)

[0040] An even-length symmetric lifting or HSS lifting (“Half-SampleSymmetric lifting”) step is defined by an HSS symmetry relationshipbetween the filtering coefficients of the lifting step:

a _(−k) =a _(k−1)  (11)

[0041] An odd-length antisymmetric lifting or WSA lifting (“Whole-SampleAntisymmetric lifting”) step is defined by a WSA symmetry relationshipbetween the filtering coefficients of the lifting step:

a ₀=0 and a _(−k) =−a _(k)  (12)

[0042] An even-length antisymmetric lifting or HSA lifting (“Half-SampleAntisymmetric lifting”) step is defined by an HSA symmetry relationshipbetween the filtering coefficients of the lifting step:

a _(−k) =−a _(k−1)  (13)

[0043] A single-coefficient lifting or SC lifting (“Single-Coefficientlifting”) step is defined by the fact that all the filteringcoefficients of the lifting step except one (denoted a_(k′)) are zero.

[0044] For the low-pass lifting steps,

[0045] if k′=0, the lifting step is called a Right-side SingleCoefficient low-pass lifting or RSC low-pass lifting step, and

[0046] if k′=−1, the lifting step is called a Left-side SingleCoefficient low-pass lifting or LSC low-pass lifting step.

[0047] In a similar manner, for the high-pass lifting steps,

[0048] if k′=1, the lifting step is called a Right-side SingleCoefficient high-pass lifting or RSC high-pass lifting step, and

[0049] if k′=0, the lifting step is called a Left-side SingleCoefficient high-pass lifting or LSC high-pass lifting step.

[0050] Given that, at the present time, more and more signal compressionalgorithms use wavelet filtering operations for the decorrelation of thesignals, it is very interesting to have available an effectiveimplementation of these filtering operations. Various image compressionalgorithms use bidimensional wavelet transformations, which consist ofthe successive application of monodimensional transformations of thetype described in the introduction.

[0051] An effective implementation of wavelet-based monodimensionalfiltering is lifting-based filtering.

[0052] It is known in fact that lifting-based filtering reduces thenumber of filtering operations (multiplications and additions) and alsoaffords a reversible implementation of wavelet-based filtering, that isto say with perfect reconstruction of the signal, without loss ofinformation, in the case of signals whose sample values are integer.

[0053] In addition, the step which is the reverse of a lifting step isobtained in a trivial fashion by changing the sign before theapproximation function R given in equations (8) and (9) above. Thismakes it possible notably to use the same circuitry in a hardwareimplantation corresponding to both forward and reverse wavelettransformations.

[0054] For a given pair of wavelet filters (H₀,H₁) the problem consistsof finding a sequence of lifting steps which will implement the wavelettransformation. This is the problem of lifting factorisation.

[0055] Two families of wavelet filters are known which have good signaldecorrelation properties: the family WSS/WSS, abbreviated to WSS, andthe family HSS/HSA, the notation A/B meaning that the low-pass filter H₀has a symmetry A and the high-pass filter H₁ has a symmetry B.

[0056] The problem consisting of implementing WSS wavelet filters byusing HSS lifting steps has been resolved and is described in thearticle by Ingrid DAUBECHIES and Wim SWELDENS cited above.

[0057] The problem consisting of implementing HSS/HSA wavelet filtershas been partly resolved, by using WSA lifting steps.

[0058] However, this solution is only partial since this implementationof the prior art applies only to a limited set of HSS/HSA waveletfilters and not to all of these filters.

[0059] Moreover, the publication by E. MAJANI entitled “Low-complexitywavelet filter design for image compression”, TDA Progress Report42-119, NASA Jet Propulsion Laboratory, Pasadena, Calif., Nov. 15, 1994,indicates that it is possible to use WSA lifting steps for lifting apair of filters (H₀, H₁), where the two filters have the same support,into a pair of filters with a larger support (H′₀,H′₁). However, noindication is found therein about the way of implementing, by liftingsteps, pairs of filters (H₀,H₁) where the two filters have the samesupport and where this support is greater than two.

[0060] The purpose of the present invention is to remedy this drawback.

[0061] It proposes an implementation by lifting of all the HSS/HSAwavelet filters which cannot be implemented by using solely WSA liftingsteps.

[0062] It therefore forms a solution to the problem of theimplementation by lifting of pairs of filters (H₀,H₁) where the twofilters have the same support and where the support is greater than 2.

[0063] To this end, the present invention proposes a filtering methodadapted to transform an input digital signal into one or more outputdigital signals having even-indexed samples and odd-indexed samples,this method including at least one iteration which contains

[0064] an operation of modifying even-indexed samples by a function ofweighted odd-indexed samples,

[0065] an operation of modifying odd-indexed samples by a function ofweighted even-indexed samples,

[0066] the weighted samples being obtained by at least one weightingoperation,

[0067] this method being remarkable in that at least one of theweighting operations is applied to the difference between twoconsecutive even-indexed samples.

[0068] Thus, the present invention allows notably the implementation bylifting of any pairs of HSS/HSA wavelet filters, and the implementationby lifting of any pair of orthogonal filters and the implementation bylifting of any pair of any wavelet filters with equal support.

[0069] The invention also makes it possible, by virtue of the techniqueof filtering by lifting, to reduce the number of filtering operations(multiplications and additions) compared with a conventional convolutionfiltering and also guarantees the reversible character of the wavelettransformations, that is to say a perfect reconstruction of the signal,in the case of signals whose sample values are integer.

[0070] According to a particular characteristic, the operation ofmodifying odd-indexed samples is performed following the operation ofmodifying even-indexed samples.

[0071] In a particular embodiment, the aforementioned iteration consistsnotably of:

[0072] weighting, by means of a first weighting coefficient, at leastone odd-indexed sample adjacent to an even sample currently beingmodified, so as to obtain a weighted odd-indexed sample,

[0073] modifying at least one even-indexed sample using at least oneweighted odd-indexed sample,

[0074] weighting, by means of a second weighting coefficient,even-indexed samples adjacent to an odd sample currently being modified,so as to obtain weighted even-indexed samples, and

[0075] modifying at least one odd-indexed sample using at least oneweighted even-indexed sample.

[0076] “Adjacent” sample means a sample whose rank is consecutive withthe sample in question.

[0077] According to a particular characteristic, the second weightingcoefficient is a function of the first weighting coefficient.

[0078] The second weighting coefficient can for example depend on thefirst weighting coefficient as follows:$\beta_{0,j} = {m_{j}/\left( {1 - {2{\sum\limits_{i = 0}^{j}\alpha_{0,i}}}} \right)}$

[0079] where α_(0,i) designates the first weighting coefficient, β_(0,j)designates the second weighting coefficient, i and j are integers andm_(j) is a value defined by the recurrence m₀=(−1)^(L) ^(₀) andm_(j)=−m_(j−1), L₀ being a predetermined integer.

[0080] According to a particular characteristic, at each iteration, theodd-indexed sample adjacent to the even sample currently being modifiedis alternately the sample of rank immediately lower or immediatelyhigher.

[0081] According to a particular characteristic, the filtering methodincludes, at the end of the aforementioned iteration, an additionalfiltering step including an operation of weighting by means of a thirdweighting coefficient.

[0082] According to a particular characteristic, the third weightingcoefficient is a function of the weighting coefficient used at theprevious step, as follows:

γ=−1/(2β_(0,L) ₀ ⁻¹)

[0083] where γ designates the third weighting coefficient, L₀ is apredetermined parameter and β_(0,L) ₀ ⁻¹ designates the weightingcoefficient used at the previous step.

[0084] In the application of the invention to the filtering of digitalimages, the input digital signal represents an image.

[0085] According to a second aspect, the present invention also proposesa filtering method adapted to transform one or more input digitalsignals into an output digital signal, the input signals includingeven-indexed samples and odd-indexed samples, the method including atleast one iteration which contains

[0086] an operation of modifying odd-indexed samples by means of afunction of weighted even-indexed samples,

[0087] an operation of modifying even-indexed samples by means of afunction of weighted odd-indexed samples,

[0088] the weighted samples being obtained by means of at least oneweighting operation,

[0089] this method being remarkable in that at least one of theweighting operations is applied to the difference between twoconsecutive even-indexed samples.

[0090] According to a particular characteristic, the operation ofmodifying even-indexed samples is performed following the operation ofmodifying odd-indexed samples.

[0091] In a particular embodiment, the aforementioned iteration consistsnotably of:

[0092] weighting, by means of a fourth weighting coefficient,even-indexed samples adjacent to an odd sample currently being modified,so as to obtain weighted even-indexed samples,

[0093] modifying at least one odd-indexed sample using at least oneweighted even-indexed sample,

[0094] weighting, by means of a fifth weighting coefficient, at leastone odd-indexed sample adjacent to an even sample currently beingmodified, so as to obtain a weighted odd-indexed sample, and

[0095] modifying at least one even-indexed sample using at least oneweighted odd-indexed sample.

[0096] According to a particular characteristic, the fourth weightingcoefficient is a function of the fifth weighting coefficient.

[0097] The fourth weighting coefficient can for example depend on thefifth weighting coefficient as follows:$\beta_{0,j} = {m_{j}/\left( {1 - {2{\sum\limits_{i = 0}^{j}\alpha_{0,i}}}} \right)}$

[0098] where α_(0,i) designates the fifth weighting coefficient, β_(0,j)designates the fourth weighting coefficient, i and j are integer andm_(j) is a value defined by the recurrence m₀=(−1)^(L) ^(₀) andm_(j)=−m_(j−1), L₀ being a predetermined integer.

[0099] According to the second aspect of the invention, according to aparticular characteristic, at each iteration, the odd-indexed sampleadjacent to the even sample currently being modified is alternately thesample of rank immediately lower or immediately higher.

[0100] According to the second aspect of the invention, according to aparticular characteristic, the filtering method includes, at the end ofthe aforementioned iteration, an additional filtering step including anoperation of weighting by means of a sixth weighting coefficient.

[0101] According to a particular characteristic, the sixth weightingcoefficient is a function of the weighting coefficient used at theprevious step, as follows:

γ=−1/(2β_(0,L) ₀ ⁻¹)

[0102] where γ designates the sixth weighting coefficient, L₀ is apredetermined parameter and β_(0,L) ₀ ⁻¹ designates the weightingcoefficient used at the previous step.

[0103] In the application of the invention to the filtering of digitalimages, the output digital signal represents an image.

[0104] According to a particular characteristic of the first and secondaspects of the invention, the modification operations consist ofapplying an approximation function.

[0105] This function may be:

[0106] the identity function, or

[0107] a function of a real variable which supplies the integer closestto the variable, or

[0108] a function of a real variable which supplies the first integerbelow the variable, or

[0109] a function of a real variable which supplies the first integerabove the variable, or

[0110] a function of a variable decomposed into subvariables whose sumis equal to the variable, which supplies a sum of approximate values ofthe subvariables, each of the approximate values of the subvariablesbeing either a function of a real variable which supplies the integerclosest to the variable, or a function of a real variable which suppliesthe first integer below the variable, or a function of a real variablewhich supplies the first integer above the variable.

[0111] The invention also relates to a signal processing device whichhas means adapted to implement a filtering method as above.

[0112] For the same purpose as indicated above, the present inventionalso proposes, according to a third aspect, a digital filtering deviceadapted to transform an input digital signal into one or more outputdigital signals containing even-indexed samples and odd-indexed samples,this filter having

[0113] at least one weighting module,

[0114] a module for modifying even-indexed samples by means of afunction of weighted odd-indexed samples,

[0115] a module for modifying odd-indexed samples by means of a functionof weighted even-indexed samples,

[0116] these weighted samples being supplied by the weighting module,the modification modules functioning iteratively, so as to modifyeven-indexed samples at least once and then odd-indexed samples at leastonce,

[0117] this filtering device being remarkable in that at least one ofthe aforementioned weighting modules receives as an input the differencebetween two consecutive even-indexed samples.

[0118] For the same purpose as indicated above, the present inventionalso proposes, according to a fourth aspect, a digital filtering deviceadapted to transform one or more input digital signals into an outputdigital signal, the input signals containing even-indexed samples andodd-indexed samples, this filtering device having

[0119] at least one weighting module,

[0120] a module for modifying odd-indexed samples by means of a functionof weighted even-indexed samples,

[0121] a module for modifying even-indexed samples by means of afunction of weighted odd-indexed samples,

[0122] the weighted samples being supplied by the weighting module, themodification module functioning iteratively, so as to modify odd-indexedsamples at least once and then even-indexed samples at least once,

[0123] this filtering device being remarkable in that at least one ofthe aforementioned weighting modules receives as an input the differencebetween two consecutive even-indexed samples.

[0124] The particular characteristics and the advantages of thefiltering device being similar to those of the filtering methodaccording to the invention, they are not stated here.

[0125] Still with the same purpose, the invention also proposes a signalprocessing device including a filtering device as previously defined, orthe means of implementing the corresponding method.

[0126] The invention also concerns a signal processing device includingat least two filtering devices as previously defined, the output signalof one of the filtering devices being the input signal of the otherfiltering device.

[0127] The invention also concerns a digital apparatus including thesignal processing device.

[0128] The invention also concerns a digital photographic apparatusincluding the signal processing device.

[0129] Still for the same purpose, the present invention also proposesan encoding method including steps adapted to implement a filteringmethod as above.

[0130] Still for the same purpose, the present invention also proposesan encoding device including at least one filtering device as above, orthe means of implementing the corresponding method.

[0131] Still for the same purpose, the present invention also proposes adigital signal compression method, including steps adapted to implementa filtering method as above.

[0132] Still for the same purpose, the present invention also proposes adigital signal compression device, including at least one filteringdevice as above, or the means of implementing the corresponding method.

[0133] An information storage means which can be read by a computer orby a microprocessor, integrated or not into the device, possiblyremovable, stores a program implementing a filtering method as above.

[0134] The present invention also relates to a computer program productcontaining sequences of instructions for implementing a filtering methodas above.

[0135] As the particular characteristics and the advantages of thesignal processing devices, of the digital apparatus, of the digitalphotographic apparatus, of the encoding and compression devices andmethods, of the storage means and of the computer program product aresimilar to those of the filtering method according to the invention,they are not stated here.

[0136] Other aspects and advantages of the invention will emerge from areading of the following detailed description of a particularembodiment, given by way of non-limitative example. The descriptionrefers to the drawings which accompany it, in which:

[0137]FIG. 1 depicts schematically a data processing device according tothe invention,

[0138]FIG. 2 depicts schematically another data processing deviceaccording to the invention,

[0139]FIG. 3 depicts an embodiment of the data processing deviceaccording to the invention,

[0140]FIG. 4 depicts an embodiment of a transformation circuit includedin the data processing device of FIG. 1,

[0141]FIG. 5 is a flow diagram illustrating the principal steps of afiltering method according to the present invention, in a firstparticular embodiment;

[0142]FIG. 6 is a flow diagram illustrating the principal steps of afiltering method according to the present invention, in a secondparticular embodiment;

[0143]FIG. 7 is a flow diagram illustrating a method of carrying out thedetermination of the lifting parameters from the coefficients of thewavelet filters;

[0144]FIGS. 8A, 8B and 8C are flow diagrams illustrating respectivelythe calculation procedures denoted UNLIFT_H0, UNLIFT_H1 and UNLIFT_EQacting in the flow diagram of FIG. 7;

[0145]FIG. 9 depicts a first embodiment of an elementary transformationunit according to the present invention; and

[0146]FIG. 10 depicts a second embodiment of an elementarytransformation unit according to the present invention.

[0147] According to a chosen embodiment depicted in FIG. 1, a dataprocessing device according to the invention is a data encoding device 2which has an input 24 to which a source 1 of non-encoded data isconnected. The data processing device can be integrated into a digitalapparatus, such as a computer, a digital photographic apparatus or afacsimile machine, for example.

[0148] The source 1 has for example a memory means, such as a randomaccess memory, hard disk, diskette or compact disc, for storingnon-encoded data, this memory means being associated with an appropriatereading means for reading the data therein. A means for recording thedata in the memory means can also be provided. The source I can also beintegrated into the digital apparatus.

[0149] It will be considered more particularly hereinafter that the datato be encoded are a series of digital samples representing an image IM.

[0150] The source 1 supplies a digital image signal SI at the input ofthe encoding circuit 2. The image signal SI is a series of digitalwords, for example bytes. Each byte value represents a pixel of theimage IM, here with 256 levels of grey, or black and white image. Theimage can be a multispectral image, for example a colour image havingcomponents in three frequency bands, of the red-green-blue or luminanceand chrominance type. Each band is then processed in a similar manner tothe monospectral image.

[0151] Means 3 using encoded data are connected at the output 25 of theencoding device 2.

[0152] The user means 3 include for example means of storing encodeddata, and/or means of transmitting encoded data.

[0153] The encoding device 2 has conventionally, as from the input 24, atransformation circuit 21, to which the present invention moreparticularly relates, and an example embodiment of which will bedetailed hereinafter. The transformations envisaged here aredecompositions of the data signal into frequency sub-bands, so as toeffect an analysis of the signal.

[0154] The transformation circuit 21 is connected to a quantisationcircuit 22. The quantisation circuit implements a quantisation known perse, for example a scalar quantisation, or a vector quantisation, of thecoefficients, or groups of coefficients, of the frequency sub-bandssupplied by the circuit 21.

[0155] The circuit 22 is connected to an entropic encoding circuit 23,which effects an entropic encoding, for example a Huffman encoding, oran arithmetic encoding, of the data quantised by the circuit 22.

[0156]FIG. 2 depicts another data processing device according to theinvention, in the form of a device 5 for decoding data encoded by thedevice 2.

[0157] Means 4 using encoded data are connected at the input 54 of thedecoding device 5. The means 4 include for example means of storingencoded data, and/or means for receiving encoded data which are adaptedto receive the encoded data transmitted by the transmission means 3.

[0158] Means 6 using decoded data are connected at the output 55 of thedecoding device 5. The user means 6 are for example image display means,or sound reproduction means, according to the nature of the data beingprocessed.

[0159] The decoding device 5 overall performs operations which are thereverse of those of the encoding device 2. The device 5 has an entropicdecoding circuit 51, which performs an entropic decoding correspondingto the encoding of the circuit 23. The circuit 51 is connected to adequantisation circuit 52, corresponding to the quantisation circuit 22.

[0160] The circuit 52 is connected to a reverse transformation circuit53, corresponding to the transformation circuit 21. The presentinvention relates more particularly to the reverse transformationcircuit 53. An example embodiment will be detailed hereinafter. Thetransformations envisaged here effect a synthesis of the digital signal,from frequency sub-bands.

[0161] The encoding device and the decoding device can be integratedinto the same digital apparatus, for example a digital camera. In thiscase, the data processing device effects the encoding and the decodingof the data.

[0162] With reference to FIG. 3, an example of a device 10 implementingthe invention is described. This device is adapted to transform adigital signal and, according to the examples developed hereinafter, toanalyse it or to synthesise it or to analyse and then synthesise it.Thus FIG. 3 illustrates an encoding or decoding device.

[0163] The device 10 is here a microcomputer having a communication bus101 to which there are connected:

[0164] a central processing unit 100,

[0165] a read-only memory 102,

[0166] a random access memory 103,

[0167] a screen 104,

[0168] a keyboard 114,

[0169] a hard disk 108,

[0170] a disk drive 109 adapted to receive a diskette 110,

[0171] an interface 112 for communication with a communication network113,

[0172] an input/output card 106 connected to a microphone 111.

[0173] The random access memory 103 stores data, variables andintermediate processing results, in memory registers bearing, in thedescription, the same names as the data whose values they store. Therandom access memory 103 contains notably:

[0174] a register “k”, containing the current value of the variable kdefined below,

[0175] a register “j”, containing the current value of the variable jdefined below,

[0176] a register “y_(i)”, in which there are stored the values of thesamples y_(i) of the transformed image as they are calculated,

[0177] a register “β_(k,j)”, in which there are stored the values of theweighting coefficients β_(k,j) defined below,

[0178] a register “m_(j)”, in which there are stored the values of theparameters m_(j) defined below,

[0179] a register “γ”, in which there are stored the values of thecoefficients γ defined below.

[0180] In the case where FIG. 3 illustrates an encoding device, theread-only memory 102 is adapted to store notably:

[0181] the operating program of the central processing unit 100, in aregister “Program”,

[0182] the maximum value k_(max) of the variable k, in a register“k_(max)”,

[0183] the value of the parameters L_(k), defined below, for all thevalues of the variable k between 0 and k_(max), in a register “L_(k)”,

[0184] the values of the weighting coefficients α_(k,j), in a register“α_(k,j)”.

[0185] It should be noted that, in the case where FIG. 3 illustrates adecoding device, the register program is also in read-only memory butthe registers “k_(max)”, “L_(k)” and “α_(k,j)” are in random accessmemory.

[0186] The central processing unit 100 is adapted to implement the flowdiagrams in FIGS. 5 and 7.

[0187] The hard disk 108 stores the programs implementing the invention,as well as the data to be encoded and the encoded data according to theinvention. These programs can also be read on the diskette 110, orreceived via the communication network 113, or stored in read-onlymemory 102.

[0188] In more general terms, the programs according to the presentinvention are stored in a storage means. This storage means can be readby a computer or by a microprocessor. This storage means is integratedor not into the device, and may be removable. For example, it mayinclude a magnetic tape, a diskette or a CD-ROM (fixed-memory compactdisc).

[0189] The device 10 can receive data to be encoded coming from aperipheral device 107, such as a digital photographic apparatus, or ascanner, or any other means of acquiring or storing data.

[0190] The device 10 can also receive data to be encoded coming from adistant device, via the communication network 113, and transmit encodeddata to a distant device, again via the communication network 113.

[0191] The device 10 can also receive data to be encoded coming from themicrophone 111. These data are then a sound signal.

[0192] The screen 104 enables a user notably to display the data to beencoded, and serves, with the keyboard 114, as a user interface.

[0193] With reference to FIG. 4, the transformation circuit 21, oranalysis circuit, is a dyadic decomposition circuit with two levels. Thecircuit 21 is, in this embodiment, a conventional set of filters,respectively associated with decimators by two, which filter the imagesignal in two directions, respectively vertical and horizontal, intosub-band signals of high and low spatial frequencies. The relationshipbetween a high-pass filter and a low-pass filter is determined by theconditions of perfect reconstruction of the signal. Different examplesof filters will be envisaged hereinafter. It should be noted that thevertical and horizontal decomposition filters are not necessarilyidentical, although in practice this is generally the case. The circuit21 has here two successive analysis units B1 and B2 for decomposing animage IM into sub-band signals according to two resolution levels.

[0194] In general terms, the resolution of a signal is the number ofsamples per unit length used for representing this signal. In the caseof an image signal, the resolution of a sub-band signal is related tothe number of samples per unit length used for representing thissub-band signal horizontally and vertically. The resolution depends onthe number of decimations carried out, on the decimation factor and onthe resolution of the initial image.

[0195] The first analysis unit B1 receives a digital image signal andapplies it to digital filters, respectively low-pass and high-pass 210and 220, which filter the image signal in a first direction, for examplehorizontal in the case of an image signal. After passing throughdecimators by two D210 and D220, the resulting filtered signals arerespectively applied to two low-pass filters 230 and 250 and high-passfilters 240 and 260, which filter them in a second direction, forexample vertical in the case of an image signal. Each resulting filteredsignal passes through a respective decimator by two D230, D240, D250 andD260. The unit B1 outputs four sub-bands signals LL₁, LH₁, HL₁ and HH₁with the highest resolution RES, in the decomposition.

[0196] The sub-band signal LL₁ contains components, or coefficients, oflow frequency, in both directions, of the image signal. The sub-bandsignal LH₁ contains the components of low frequency in a first directionand of high frequency in a second direction, of the image signal. Thesub-band signal HL₁ contains the components of high frequency in thefirst direction and the components of low frequency in the seconddirection. Finally, the sub-band signal HH₁ contains the components ofhigh frequency in both directions.

[0197] Each sub-band signal is a set of real coefficients constructedfrom the original image, which contains information corresponding to anorientation which is respectively vertical, horizontal and diagonal ofthe contours of the image, in a given frequency band. Each sub-bandsignal can be assimilated to an image.

[0198] The sub-band signal LL₁ is analysed by the analysis unit B2similar to the previous one in order to supply four sub-band signalsLL₂, LH₂, HL₂ and HH₂ of resolution level RES₂.

[0199] Each of the sub-band signals of resolution RES₂ also correspondsto an orientation in the image.

[0200] To a given analysis circuit 21 there corresponds, in aconventional manner, a synthesis circuit whose structure is derived fromthat of the analysis circuit.

[0201]FIG. 5 shows the succession of lifting steps implementing theforward wavelet transformation according to the present invention. Thereverse transformation will be described next in relation to FIG. 6.

[0202] An input signal x_(n) to be transformed is considered, havingsamples whose ranks are between two integers i₀ and i₁ (excluding i₁),into an output signal y_(n) having samples whose ranks are between i₀and i₁ (excluding i₁).

[0203] An initialisation step 500 consists first of all of setting thevalue of the samples of the output signal y_(n) to that of the samplesof the input signal x_(n).

[0204] During step 500, two counters, whose current value will bedenoted respectively k and j, are also initialised to the value 0.

[0205] During step 500, the parameter m_(j), mentioned above in relationto FIG. 3, is also initialised, to a value m₀=(−1)^(L) ^(₀) , where L₀is another parameter, defined below.

[0206] If a signal y_(n) is considered, having samples whose ranks arebetween i₀ and i₁ (excluding i₁), the signal y_(n) must be extendedbeyond this range, sufficiently for all the samples of the output signaly_(n) whose ranks are between i₀ and i₁ (excluding i₁) to be able to becalculated. This will emerge from the description of an example, givenbelow.

[0207] Thus a signal extension procedure (not depicted in FIG. 5)consists of calculating the values of the output signal y_(i) for valuesof i leaving a predetermined interval i₀≦i<i₁:

y _(i) =y _(PSE(i,i) ⁰ _(,i) ¹⁾   (14)

[0208] where

PSE(i,i ₀ ,i ₁))=i ₀+min[mod(i−i ₀,2(i−i ₀)),2(i ₁ −i ₀)−mod(i−i ₀,2(i ₁−i _(0))])  (15)

[0209] where min(a,b) designates the function supplying the smaller ofthe values a and b and mod(a,b) designates the integer lying between 0and b−1 (including b−1) equal to the value of a, to within a multiple ofb.

[0210] The example, in no way limitative, of an extension proceduregiven above applies to signals such that the rows i₀ and i₁ are even.Other extension procedures can be used in the case where at least one ofthe rows i₀ and i₁ is odd. Nevertheless the remainder of the descriptionapplies to all parity cases. Moreover, there are other extensionprocedures for other types of filter, such as for example the so-calledcircular extension, known to a person skilled in the art, for orthogonalfilters.

[0211] The following step 502 of the filtering method is the firstlifting step. This is a high-pass lifting step.

[0212] In a preferred embodiment, this lifting step is either of the LSCor of the RSC type, according to the value of the parameter m₀=(−1)^(L)^(₀) , and is defined by:

∀n,y _(2n+1) =y _(2n+1) −R(y _(2n+1−m) ⁰ ₎  (16)

[0213] This lifting step corresponds to the HSA high-pass filterH₁(z)=z−1 or 1−z, according to the value of mo. It corresponds to anincrease by one unit of the support of the equivalent high-pass filter.

[0214] At the end of the lifting step 502, a test 504 is carried out inorder to determine whether or not the value of the counter j is equal toL₀.

[0215] As long as the result of the test 504 is negative, a step 506 isiterated, which consists essentially of a sequence of operations ofmodifying and weighting the even-indexed or odd-indexed samples of thesignal y_(n).

[0216] This is because, during the step 506, a succession of L₀ pairs oflifting steps are effected, corresponding to values of the counter jbetween 0 and 0 and L₀−1, where the first lifting step is a singlecoefficient low-pass lifting step:

∀n,y _(2n) =y _(2n) +R(α_(0,j) ·y _(2n+mj))  (17)

[0217] and where the second lifting step is a HSA high-pass liftingstep:

∀n,y _(2n+1) =y _(2n+1) +R(β_(0,j)·(y_(2n) −y _(2n+2)))  (18)

[0218] The non-zero parameter α_(0,j) used in equation (17) is afunction of the coefficients of the pair of wavelet filters (H₀,H₁) andits calculation is detailed below.

[0219] Given that the value of m_(j) is either −1 or +1 as will be seen,the rank of the sample y_(2n+m) ^(j) is either 2n−1 or 2n+1, that is tosay an integer following on from the rank of the sample y_(2n) currentlybeing modified. It is said that the odd-indexed sample y_(2n+m) ^(j) isadjacent to the sample y_(2n).

[0220] The single coefficient low-pass lifting step is either of the LSCor RSC type, according to the value of the parameter m_(j), which isdefined recursively by: m_(j)=−m_(j−1).

[0221] There is a systematic alternation of the following singlecoefficient low-pass lifting steps (that is to say corresponding tofollowing values of j): for example, the second is of the LSC type ifthe first is of the RSC type or vice versa. The last single coefficientlow-pass lifting step is always of the LSC type.

[0222] The low-pass lifting step of equation (17) guarantees that thesupport of the equivalent low-pass filter increases until it reaches thevalue of the support of the equivalent high-pass filter of the previoushigh-pass lifting step, i.e. the closest higher even value.

[0223] In accordance with a preferred embodiment of the presentinvention, the high-pass lifting step of equation (18) is of the HSAtype, unlike the prior art, which uses solely single coefficient liftingsteps and WSA lifting steps for the implementation by lifting of HSS/HSAwavelet filters.

[0224] The high-pass lifting step of equation (18) guarantees that thesupport of the equivalent high-pass filter increases by a value of two(that is to say until it reaches the closest higher even value) withrespect to the support of the equivalent high-pass filter of theprevious high-pass lifting step.

[0225] The equivalent high-pass filter of the high-pass lifting step ofequation (18) is of the HSA type if and only if the equivalent high-passfilter of the previous high-pass lifting step is HSA and the non-zeroparameter β_(0,j) used in equation (18) is a function of the parameterm_(j) and of the parameters α_(0,i) originating from the previous singlecoefficient low-pass lifting steps, this function being for exampledefined as follows: $\begin{matrix}{\beta_{0,j} = {m_{j}/\left( {1 - {2{\sum\limits_{i = 0}^{j}\alpha_{0,i}}}} \right)}} & (19)\end{matrix}$

[0226] Unlike the low-pass lifting step of equation (17), which liftsthe low-pass coefficients from the high-pass coefficients alternately toleft and right, the high-pass lifting step of equation (18) lifts thehigh-pass coefficients from both the left-side and right-side low-passcoefficients.

[0227] When the result of test 504 is positive, that is to say j=L₀, thealternation of SC low-pass and HSA high-pass lifting steps ends and isfollowed by an RSC low-pass lifting step 508, defined by:

∀n,y _(2n) =y _(2n) +R(γ·y _(2n+1))  (20)

[0228] In a preferred embodiment, the coefficient γ is calculatedaccording to the weighting coefficient used at the previous high-passlifting step:

γ=−1/(2β_(0,L) ⁰ ⁻¹)  (21)

[0229] in order to guarantee that the corresponding low-pass filter isHSS.

[0230] The low-pass lifting step 508 guarantees that the support of theequivalent low-pass filter increases until it reaches the value of thesupport of the equivalent high-pass filter of the previous high-passlifting step, that is to say, in the preferred embodiment describedhere, the closest higher even integer.

[0231] In this preferred embodiment, there is obtained, at the end ofstep 508, a corresponding pair of low-pass and high-pass filters whichhave equal even supports and which are respectively HSS and HSA.

[0232] Next an iteration is carried out of steps of WSA low-pass (step512) and WSA high-pass (step 518) lifting, that is to say k_(max)− WSAlifting steps in total, the value of the counter k increasing from 1 tok_(max)−.

[0233] For this purpose, following step 508, the value of a counter k isincremented by one unit at step 510. The value of k is incremented onceagain after each passage through step 512 (see step 514 in FIG. 5) andafter each passage through step 518 (see step 520 in FIG. 5).

[0234] Steps 512, 514, 518 and 520 are reiterated until the value of kis equal to k_(max) (see tests 516 and 522 on the value of k,respectively carried out after the incrementation steps 514 and 520).

[0235] The WSA low-pass lifting steps 512 are defined by:$\begin{matrix}{{\forall n},{y_{2n} = {y_{2n} + {R\left( {\sum\limits_{j = 0}^{L_{{2k} - 1} - 1}{\alpha_{{{2k} - 1},j} \cdot \left( {y_{{2n} + 1 - {2j}} - y_{{2n} + 1 + {2j}}} \right)}} \right)}}}} & (22)\end{matrix}$

[0236] and the WSA high-pass lifting steps 518 are defined by:$\begin{matrix}{{\forall n},{y_{{2n} + 1} = {y_{{2n} + 1} + {R\left( {\sum\limits_{j = 0}^{L_{2k} - 1}{\alpha_{{2k},j} \cdot \left( {y_{{2n} - {2j}} - y_{{2n} + {2j}}} \right)}} \right)}}}} & (23)\end{matrix}$

[0237] These steps are known per se. Their effect is an increase in thesize of the corresponding filter (low-pass for step 512 and high-passfor step 518) by a multiple of four.

[0238] In order to produce wavelet filters with a unity direct currentgain and a Nyquist gain of 2, that is to say with a so-called (1,2)normalisation, no specific normalisation step of the type y_(i)=G·y_(i),where G is a real value, is necessary. On the other hand, if a differentnormalisation is required, such as a (G₁, 2G₂) normalisation with a DCgain of G₁ and a Nyquist gain of 2G₂, a final normalisation step isnecessary: y_(2n) =G ₁·y_(2n) and y_(2n+1)=G₂·y_(2n+1).

[0239] The approximation function R is not necessarily the same for allthe lifting steps for which it is used.

[0240] The parameters to be chosen for the lifting implementation of theHSS/HSA filters are L_(k), α_(k,j), k_(max) and the function R at eachlifting step. It is thus possible to establish a one-to-one mappingbetween these parameters and the coefficients and lengths of any pair ofperfect reconstruction HSS/HSA wavelet filters.

[0241]FIG. 6 shows the succession of lifting steps implementing thereverse wavelet transformation in accordance with the present invention.

[0242] An input signal y_(n) to be transformed is considered, havingsamples whose ranks lie between two integers i₀ and i₁ (not includingi₁) and an output signal x_(n) having samples whose ranks lie between i₀and i₁ (not including i₁).

[0243] An initialisation step 600 consists first of all of setting thevalue of the samples of the output signal x_(n) to that of the samplesof the input signal y_(n).

[0244] All the steps of the reverse lifting implementation are theoperations which are the reverse of the lifting steps performed inforward transformation. Moreover, the steps of the reverse liftingimplementation are performed in the opposite order to the steps of theforward lifting implementation.

[0245] For an analysis processing followed by a synthesis processing ofthe same signals, all the parameters of the reverse transformation areidentical to those chosen for the forward transformation.

[0246] As shown by FIG. 6, during the initialisation step 600, acounter, whose current value is denoted k, is also initialised to thevalue k_(max)−1.

[0247] If a signal x_(n) is considered, having samples whose ranks liebetween i₀ and i₁ (not including i₁), the signal x_(n) must be extendedbeyond this range, sufficiently for all the samples of the output signalx_(n) whose ranks are between i₀ and i₁ (not including i₁) being able tobe calculated. This will emerge from the description of an example,given below.

[0248] Thus a signal extension procedure (not depicted in FIG. 6)consists of calculating the values of the output signal x_(i) for valuesof i leaving a predetermined interval i₀≦i<i₁,

[0249] as defined by equation (24) below for values of i such thatmod(i−i₀,2(i₁−i₀))<i₁−i₀:

x _(i) =x _(i) ⁰ _(+mod(i−i) ⁰ _(,2(i) ¹ _(−i) ⁰⁾⁾   (24)

[0250] where mod(a,b) designates the integer lying between 0 and b−1(including b−1) equal to the value of a, to within a multiple of b,

[0251] as defined by equation (25) below for even values of i such thatmod(i−i₀,2(i₁−i₀))≧i₁−i₀:

x _(i) =x _(i) ⁰ _(+mod(2(i) ¹ _(−i) ⁰ _(−1)−(i−i) ⁰ _(),2(i) ¹ _(−i) ⁰₎₎₎  (25)

[0252] and as defined by equation (26) below for odd values of i suchthat mod(i−i₀,2(i₁−i₀))≧i₁−i₀:

x _(i) =x _(i) ⁰ _(+mod(2(i) ¹ _(−i) ⁰ _()−(i−i) ⁰ _(),2(i) ¹ _(−i) ⁰₎₎₎  (26)

[0253] There are other extension procedures for other types of filter,such as for example the so-called circular extension, known to a personskilled in the art, for orthogonal filters.

[0254] In order to implement wavelet filters with a unity DC gain and aNyquist gain of 2, that is to say with a so-called (1,2) normalisation,no specific normalisation step of the type x_(i)=G·x_(i), where G is areal value, is necessary. On the other hand, if a differentnormalisation is required, such as a (G₁, 2G₂) normalisation with a DCgain of G₁ and a Nyquist gain of 2G₂, a reverse normalisation step isnecessary: x_(2n)=(1/G₁)·x_(2n) and x_(2n+1)=(1/G₂)·x_(2n+1).

[0255] As shown in FIG. 6, an iteration of steps of WSA low-pass lifting(step 602) and WSA high-pass lifting (step 608) is carried out, that isto say k_(max)−1 WSA lifting steps in total, the value of the counter kdecreasing from k_(max)−1 to 1.

[0256] For this purpose, the value of the counter k is decremented byone unit after each passage through step 602 (see step 604 in FIG. 6)and after each passage through step 608 (see step 610 in FIG. 6).

[0257] Steps 602, 604, 608 and 610 are reiterated until the value of kis equal to 1 (see tests 606 and 612 on the value of k, respectivelyperformed after the decrementation steps 604 and 610).

[0258] The WSA low-pass lifting steps 602 are defined by:$\begin{matrix}{{\forall n},{x_{2n} = {x_{2n} - {R\left( {\sum\limits_{j = 0}^{L_{{2k} - 1} - 1}\quad {\alpha_{{{2k} - 1},j} \cdot \left( {x_{{2n} + 1 - {2j}} - x_{{2n} + 1 + {2j}}} \right)}} \right)}}}} & (27)\end{matrix}$

[0259] and the WSA high-pass lifting steps 608 are defined by:$\begin{matrix}{{\forall n},{x_{{2n} + 1} = {x_{{2n} + 1} - {R\left( {\sum\limits_{j = 0}^{L_{2k} - 1}\quad {\alpha_{{2k},j} \cdot \left( {x_{{2n} - {2j}} - x_{{2n} + {2j}}} \right)}} \right)}}}} & (28)\end{matrix}$

[0260] These steps are known per se.

[0261] When the result of test 606 or 612 is positive, that is to sayk=1, the alternation of the steps of WSA low-pass lifting and WSAhigh-pass lifting ends and is followed by a step of RSC low-pass lifting614, defined by:

∀n,x _(2n) =x _(2n) −R(β·x _(2n+1))  (29)

[0262] In a preferred embodiment, the coefficient γ is calculated as afunction of the weighting coefficient used at the following high-passlifting step:

γ=−1/(2β_(0,L) ⁰ ⁻¹)  (30)

[0263] During step 614, the parameter m_(j) is also initialised to thevalue 1 and a counter j to the value L₀−1.

[0264] At the end of the low-pass lifting step 614, a test 616 isperformed in order to determine whether or not the value of the counterj is equal to 0.

[0265] As long as the result of test 616 is negative, a step 618 isiterated, which consists essentially of a sequence of operations ofmodifying and weighting the even-indexed or odd-indexed samples of thesignal x_(n).

[0266] This is because, during step 618, a succession of L₀ pairs oflifting steps are performed, corresponding to values of a counter jlying between L₀−1 and 0, where the first lifting step is a HSAhigh-pass lifting step:

∀n,x _(2n+1) =x _(2n+1) −R(β_(0,j)·(x _(2n) −x _(2n+2)))  (31)

[0267] and where the second lifting step is a single coefficientlow-pass lifting step:

∀n,x _(2n) =x _(2n) −R(α_(0,j) ·x _(2n+m) ^(j) )  (32)

[0268] When the result of test 616 is positive, that is to say j=0, thelast lifting step 620 is performed, which is the reverse of the firsthigh-pass lifting step performed in the forward transformation. In apreferred embodiment, this lifting step is either of the LSC or of theRSC type, according to the value of the parameter m₀=(−1)^(L) ^(₀) , andis defined by:

∀n,x _(2n+1) =x _(2n+1) +R(x _(2n+1−m) ⁰ )  (33)

[0269]FIG. 7 illustrates a procedure for determining the liftingparameters for any given pair of HSS/HSA wavelet filters, defined byequations (4), (6) and (7) appearing in the introduction. This procedurealso applies to orthogonal filters as well as to any filters, withoutany particular symmetry, with equal support. The “UNLIFT” proceduresappearing below are detailed subsequently.

[0270] As shown by FIG. 7, a first step 700 consists of initialising aninteger variable k to 0 and a variable n₀ to −1 and storing, in avariable l_(i), i ε {0,1}, the length, that is to say the number ofcoefficients, of the intermediate low-pass and high-pass filters H₀ andH₁, respectively (that is to say the number of coefficients of theso-called equivalent filters).

[0271] Then a step 702 consists of testing whether l₀<l₁.

[0272] If the result of test 702 is positive, there is performed a step704 of determining the coefficients of the WSA high-pass lifting step518 of FIG. 5 by applying a procedure UNLIFT_H₁ (see FIG. 8B), at theend of which there are obtained the number of lifting coefficientsL_(k), the L_(k) coefficients α_(k,i) for 0≦i<L_(k) and the newintermediate high-pass filter Hi.

[0273] At step 704, the value of k is also incremented by one unit, thelength l_(i) of the intermediate filter is updated and the value 1 isstored in the variable n₀.

[0274] If the result of test 702 is negative, a step 706 is performed,consisting of testing whether l₀>l₁.

[0275] If the result of test 706 is positive, a step 708 of determiningthe coefficients of the WSA low-pass lifting step 512 of FIG. 5 isperformed by applying a procedure UNLIFT_H0 (see FIG. 8A), at the end ofwhich there are obtained the number of lifting coefficients L_(k), theL_(k) coefficients α_(k,i) for 0≦i<L_(k) and the new intermediatelow-pass filter H₀.

[0276] At step 708, the value of k is also incremented by one unit, thelength l_(i) of the intermediate filter is updated and the value 0 isstored in the variable n₀.

[0277] If the result of test 706 is negative, a step 710 is performed,consisting of testing whether the variable n₀ is zero.

[0278] If the result of test 710 is positive, a step 712 is performed,consisting of storing the value 0 in the variable L_(k) and incrementingthe value of k by one unit.

[0279] At the end of step 712, or if the result of test 710 is negative,a step 714 of determining the coefficients of the single coefficientlow-pass lifting step included in step 506 in FIG. 5 is performed byapplying a procedure UNLIFT_EQ (see FIG. 8C), at the end of which thenumber of lifting coefficients L₀ and the L₀ coefficients α_(0,i) for0≦i<L₀ are obtained.

[0280] At step 714, the value of k is also incremented by one unit.

[0281] At the end of step 714, a rearrangement step 716 is performed,consisting of updating the lifting coefficients obtained by reorderingthem, as follows:

(L₀,L₁, . . . ,L_(k−1))=(L_(k−1),L_(k−2), . . . ,L₀)

(α_(0,i),α_(1,i), . . . ,α_(k−1,i))=(α_(k−1,i),α_(k−2,i), . . .,α_(0,i))

[0282] During step 716, the value k_(max) is also stored in the variablek.

[0283] In summary:

[0284] when l₀>l₁, the lifting coefficients are obtained by theprocedure UNLIFT_H0(H₀,H₁),

[0285] when l₀<l₁, the lifting coefficients are obtained by theprocedure UNLIFT_H1(H₀,H₁) and

[0286] when l₀=l₁, the lifting coefficients are obtained by theprocedure UNLIFT_EQ(H₀,H₁).

[0287] These three procedures are now described in more detail.

[0288] As shown by FIG. 8A, which illustrates the procedure UNLIFT_H0,an initialisation step 800A consists of storing in the variable l₀ halfof the length of H₀ and storing in the variable l₁ half of the length ofH₁. During step 800A, a variable i and the variable L_(k) are alsoinitialised to the value 0.

[0289] Then a step 802A consists of testing whether l₀>l₁.

[0290] If the result of test 802A is negative, the procedure UNLIFT_H0is terminated.

[0291] If the result of test 802A is positive, a step 804A consists ofcalculating α_(k,i) and H₀(z), as follows:

α_(k,i) =−H _(0,l) ⁰ /H _(1,l) ¹

H ₀(z)=H ₀(z)−α_(k,i)·(z ^(−l) ^(₀) ^(+l) ^(₁) −z ^(l) ^(₀) ^(−l) ^(₁))·H ₁(z)

[0292] At the end of step 804A, the value of l₀ is decremented by twounits and the value of i and the value of L_(k) are incremented by oneunit.

[0293] Then this step 804A is reiterated as long as l₀>l₁.

[0294] As shown by FIG. 8B, which illustrates the procedure UNLIFT_H1,an initialisation step 800B identical to step 800A of FIG. 8A is firstof all performed.

[0295] Then a step 802B consists of testing whether l₁>l₀.

[0296] If the result of test 802B is negative, the procedure UNLIFT_H1is terminated.

[0297] If the result of test 802B is positive, a step 804B consists ofcalculating α_(k,i) and H₁(z), as follows:

H ₁(z)=H _(1,l) ¹ /H _(0,l) ⁰

H ₁(z)=H ₁(z)−α_(k,i)·(z ^(−l) ¹ ^(+l) ⁰ −z ^(l) ¹ ^(−l) ⁰ )·H ₀(z)

[0298] At the end of step 804B, the value of l₁ is decremented by twounits and the value of i and the value of L_(k) are incremented by oneunit.

[0299] Then this step 804B is reiterated as long as l₁>l₀.

[0300] As shown in FIG. 8C, which illustrates the procedure UNLIFT_EQ,an initialisation step 800C consists of storing in the variable l₀ halfof the length of H₀, and storing in the variable l₁ the value of l₀.During step 800C, the variable L₀ is also initialised to the value l₀−1and a variable i to the value L₀−1.

[0301] The following step 802C consists of calculating H_(o)(z) and theparameter γ, as follows:

γ=H _(0,l) ⁰ /H _(1,l) ¹

H ₀(z)=z·[H ₀(z)−γ·H₁(z)]

[0302] At the end of step 802C, the value of l₀ is decremented by oneunit and a variable q is initialised to the value 0.

[0303] Then a step 804C consists of testing whether l₀>0.

[0304] If the result of test 804C is negative, the procedure UNLIFT_EQis terminated.

[0305] If the result of test 804C is positive, a step 806C consists oftesting whether q>0.

[0306] If the result of test 806C is positive, the following step 808Cconsists of calculating β_(0,i), H₁(z), α_(0,i) and H₀(z), as follows:

β_(0,i) =H _(1,−) ¹ ₊₁ /H _(0,−l) ⁰ ₊₁

H ₁(z)=z ⁻ ·[H ₁(z)−β_(0,i)·(z ⁻¹ −z)·H ₀(z)]

α_(0,i) =−H _(0,−l) ⁰ ₊₁ /H _(1,−l) ¹ ₊₁

H ₀(z)=z ⁻¹ ·[H ₀(z)−α_(0,i) ·H ₁(z)]

[0307] During step 808C, after calculating H₁(z), the value of l₁ isdecremented by one unit and, after calculating H₀(z), the value of l₀and the value of i are decremented by one unit and the value 1 is storedin the variable q.

[0308] Then this step 808C is reiterated as long as l₀>0.

[0309] If the result of test 806C is negative, the following step 810Cconsists of calculating β_(0,i), H₁(z), α_(0,i) and H₀(z), as follows:

β_(0,i) =−H _(1,l) ¹ /H _(0,l) ⁰

H ₁(z)=z·[H ₁(z)−β_(0,i)·(z ⁻¹ −z)·H ₀(z)]

α_(0,i) =H _(0,1) ⁰ /H _(1,l) ¹

H ₀(z)=z·[H ₀(z)−α_(0,i) ·H ₁(z)]

[0310] During step 810C, after calculation of H₁(z), the value of l₁ isdecremented by one unit and, after calculation of H₀(z), the value of l₀and the value of i are decremented by one unit and the value 0 is storedin the variable q.

[0311] Then this step 810C is reiterated as long as l₀>0.

[0312]FIGS. 9 and 10 illustrate in schematic form an elementarytransformation unit included in a filtering device in accordance withthe present invention, in two particular embodiments. FIG. 9 illustratesmore particularly a forward lifting transformation unit and FIG. 10illustrates more particularly a reverse lifting transformation unit.

[0313] The filtering device 900 shown schematically in FIG. 9 isequivalent to that of the unit BE illustrated in FIG. 4.

[0314] It has an input E₂₀ to which the signal to be transformed isapplied. The signal to be transformed includes a series of samples{x_(i)}, where i is a sample rank index.

[0315] The input E₂₀ is connected to a first decimator by two D₂₀, whichdelivers the even-indexed samples {x_(2i)}.

[0316] The input E₂₀ is also connected to an advance AV₂₁ followed by asecond decimator D₂₁, which delivers the odd-indexed samples {x_(2i+1)}.

[0317] The first decimator D₂₀ is connected to a first filter A₀, whichfilters the even-indexed samples by applying to them a weightingcoefficient β_(0,j) and an approximation function as described inequation (18) and supplies them to an adder AD₂₀.

[0318] The assembly formed by the filter A₀ and the adder AD₂₀ is ahigh-pass lifting module, denoted FHP in the drawing.

[0319] The output of the second decimator D₂₁ is also connected to theadder AD₂₀.

[0320] Consequently the adder AD₂₀ delivers intermediate samplesy_(2i+1) calculated according to equation (18).

[0321] The output of the adder AD₂₀ is also connected to a second filterA₁ which filters the odd-indexed samples by applying to them a weightingcoefficient α_(0,j) and an approximation function as described inequation (17) and supplies them to an adder AD₂₁.

[0322] The assembly formed by the filter A₁ and the adder AD₂₁ is alow-pass lifting module, denoted FLP in the drawing.

[0323] The output of the first decimator D₂₀ is also connected to theadder AD₂₁.

[0324] The output of the adder AD₂₁ is the first output S₂₀ of thetransformation unit, which delivers a digital signal containinglow-frequency samples y_(2i).

[0325] The adder AD₂₀ is connected to a second output S₂₁ of theelementary unit, which delivers a digital signal containinghigh-frequency samples y_(2i+1).

[0326] The filtering device 1000 shown schematically in FIG. 10 effectsthe transformation which is the reverse of that effected by thefiltering device 900 shown schematically in FIG. 9.

[0327] This transformation unit has a first input E₃₀ to which a firstsignal to be transformed is applied and a second input E₃₁ to which asecond signal to be transformed is applied.

[0328] The signals to be transformed contain here the samples obtainedafter analysis filtering of a digital signal by the analysis unit ofFIG. 9. These samples have possibly been modified by another processingbetween analysis and synthesis.

[0329] More precisely, the first signal to be transformed contains thelow-frequency samples {y_(2i)} and the second signal to be transformedcontains the high-frequency samples {y_(2i+1)}.

[0330] The synthesis unit has a structure similar to that of theanalysis unit, and can be derived from it simply. In particular, thesynthesis unit uses the same filters A₀ and A₁ as the analysis unit.

[0331] The input E₃₀ is connected to a subtracter SO₃₀.

[0332] The input E₃₁ is connected to the filter A₁, itself connected tothe subtracter SO₃₀.

[0333] The assembly formed by the filter A₁ and the subtracter SO₃₀ is alow-pass lifting module, denoted ILP in the drawing.

[0334] The output of the subtracter SO₃₀ delivers a digital signalcontaining intermediate samples y_(2i) calculated according to equation(32).

[0335] The output of the subtracter SO₃₀ is connected to the filter A₀,itself connected to a subtracter SO₃₁, to which the input E₃₁ is alsoconnected.

[0336] The assembly formed by the filter A₀ and the subtracter SO₃₁ is ahigh-pass lifting module, denoted IHP in the drawing.

[0337] The output of the subtracter SO₃₁ delivers a digital signalcontaining reconstructed odd-indexed samples x_(2i+1).

[0338] The output of the subtracter SO₃₀ delivers a digital signalcontaining reconstructed even-indexed samples x_(2i).

[0339] The output of the subtracter SO₃₀ is connected to an interpolatorby two IN₃₀ and the output of the subtracter SO₃₁ is connected to aninterpolator by two IN₃₁ itself connected to a delay R₃₁. Theinterpolator IN₃₀ and the delay R₃₁ are connected to an adder AD₃₂,which delivers as an output S₃₀ the signal containing the reconstructedsamples x_(i).

[0340] An example, in no way limitative, of forward and reversetransformation by lifting for the implementation of wavelet filtersaccording to the invention is now given.

[0341] The pair of filters used in this example are as follows:$\begin{matrix}{{H_{0}(z)} = \frac{{\alpha \cdot z^{- 1}} + 1 + z + {\alpha \cdot z^{2}}}{2 \cdot \left( {\alpha + 1} \right)}} & (35) \\{{H_{1}(z)} = \frac{{\alpha \cdot z^{- 1}} + 1 - z + {\alpha \cdot z^{2}}}{2 \cdot \left( {\alpha - 1} \right)}} & (36)\end{matrix}$

[0342] The lifting parameters corresponding to this pair of filters are:

k=1, L ₀=1 and α_(0,0)=α.  (37)

[0343] An approximation function R identical for all the lifting steps,defined by R(x)=E(x+1/2) where E designates the integer part, is alsochosen.

[0344] The length of the signal is chosen so as to be equal to 6: i₀=0and i₁₌6.

[0345] With regard to the forward lifting equations, all the values ofthe output signal Y are initialised to the values of the input signal X.The signal Y is then extended by one sample at each limit: y⁻¹=y₀ andy₆=y₅.

[0346] The following four lifting operations are performed. First ofall, the values of the samples (y_(−1, y) ₁, y₃, y₅) are calculatedfrom:

y _(2n+1) =y _(2n+1) −E(y _(2n+2)+1/2) for n=−1, 0, 1, 2  (38)

[0347] Next, the values of the samples (y₀, y₂, y₄, y₆) are calculatedfrom:

y _(2n) =y _(2n) +E(α_(0,0) ·y _(2n−1)+1/2) for n=0, 1, 2, 3  (39)

[0348] where

α_(0,0)=α  (40)

[0349] Then the values of the samples (y₁, y₃, y₅) are calculated from:

y _(2n+1) =y _(2n+1) +E[β _(0,0)·(y _(2n) −y _(2n+2))+1/2)] for n=0, 1,2  (41)

[0350] where

β_(0,0)=−1/(1−2α)  (42)

[0351] Finally, the values of the samples (y₀, y₂, y₄) are calculatedfrom:

y _(2n) =y _(2n) +E(γ·y _(2n+1)+1/2) for n=0, 1, 2  (43)

[0352] where

γ=−1/(2β_(0,0))  (44)

[0353] With regard to the reverse lifting equations, all the values ofthe output signal X are initialised to the values of the input signal Y.The signal X is then extended by two samples at each limit: x⁻²=x₀,x⁻¹=−x₁ and x₆=x₄ and x₇=−x₅.

[0354] The following four reverse lifting operations are performed.First of all, the values of the samples (x⁻², x₀, x₂, x₄, x₆) arecalculated from:

x _(2n) =x _(2n) −E(γ·x _(2n+1)+1/2) for n=−1, 0, 1, 2, 3  (45)

[0355] Next, the values of the samples (x_(−1, x) ₁, x₃, x₅) arecalculated from:

x _(2n+1) =x _(2n+1) −E[β _(0,0)·(x _(2n) −x _(2n+2))+1/2)] for n=−1, 0,1, 2  (46)

[0356] Then the values of the samples (x₀, x₂, x₄, x₆) are calculatedfrom:

x _(2n) =x _(2n) −E(β_(0,0) ·x _(2n−1)+1/2) for n=0, 1, 2, 3  (47)

[0357] Finally, the values of the samples (x₁, x₃, x₅) are calculatedfrom:

x _(2n+1) =x _(2n+1) +E(x _(2n+2)+1/2) for n=0, 1, 2  (48)

[0358] The field of application of the present invention is not limitedto HSS/HSA wavelet filters with equal supports, but extends much morebroadly, on the one hand, to orthogonal wavelet filters and, on theother hand, to any wavelet filters with equal supports.

[0359] With regard to the application of the invention to theimplementation by lifting of orthogonal wavelet filters, the onlydifference compared with what was described previously lies in the valueof the lifting parameters α_(0,i), β_(0,i), γ and in the relationshipbetween these parameters, in order to guarantee that they implementHSS/HSA filters or orthogonal filters equally well. It should be notedthat the method of calculating the lifting parameters, described abovein relation to FIGS. 7 and 8, can be used for generating all the liftingparameters α_(0,i), β_(0,i), γ for the HSS/HSA filters and fororthogonal filters.

[0360] All the orthogonal filters have equal support and even length butare not symmetrical, except in one trivial case: the Haar filter,defined by H₀(z)=(1+z)/2 and H₁(z)=−1+z.

[0361] The orthogonal filters of length 4 are characterised by aparameter θ representing one degree of freedom: $\begin{matrix}{{H_{0}(z)} = \frac{{\cos \quad {\theta \cdot \left( {{\sin \quad \theta} + {\cos \quad \theta}} \right) \cdot z^{- 1}}} + {\sin \quad {\theta \cdot \left( {{\sin \quad \theta} + {\cos \quad \theta}} \right)}} + {\sin \quad {\theta \cdot \left( {{\sin \quad \theta} - {\cos \quad \theta}} \right) \cdot z}} + {\cos \quad {\theta \cdot \left( {{\cos \quad \theta} - {\sin \quad \theta}} \right) \cdot z^{2}}}}{2}} & (49)\end{matrix}$

 H ₁(z)=Cos θ·(cos θ−sin θ)·z ⁻¹−sin θ·(sin θ−cos θ)+sin θ·(sin θ+cosθ)·z−cos θ·(sin θ+cos θ)·z ²  (50)

[0362] In more general terms, the orthogonal filters satisfy theequation:

H ₁(z)=2z·H ₀(−z ⁻¹)  (51)

[0363] In the non-limitative example given here, as before, anapproximation function R identical for all the lifting steps is chosenand defined by R(x)=x+1/2.

[0364] The length of the signal is chosen so as to be equal to 6: i₀=0and i₁=6.

[0365] The implementation by lifting of such a filter is carried outusing the same steps as in the previous example (except with regard tothe extension procedure, described below) except that the parameters arehere chosen as follows: $\begin{matrix}{{k = 1},{L_{0} = 1},{\alpha_{0,0} = \frac{\cos \quad \theta}{{\sin \quad \theta} + {\cos \quad \theta}}},{\beta_{0,0} = {\cos \left( {2\theta} \right)}},{\gamma = \frac{{\sin \quad \theta} - {\cos \quad \theta}}{2\left( {{\sin \quad \theta} + {\cos \quad \theta}} \right)}}} & (52)\end{matrix}$

[0366] The lifting factorisation procedure given above is similar fororthogonal filters. The only difference lies in the relationship betweenthe coefficients α_(0,i), β_(0,i), γ.

[0367] As has been seen for HSS/HSA filters, the parameters α_(0,i) area function of the coefficients of the filters of the wavelettransformation to be effected. The same applies to orthogonal filters.The method of calculating the lifting parameters described above isunchanged.

[0368] As has been seen for the HSS/HSA filters, the parameters β_(0,i)are a function of the parameters α_(0,i) and are such that theyguarantee that the equivalent high-pass filter H₁(z) of each high-passlifting step is HSA. The situation is similar for orthogonal filters:the parameters β_(0,i) are a function of the parameters α_(0,i) and aresuch that they guarantee that the equivalent high-pass filter H₁(z) ofeach high-pass lifting step is such that H₀(z)=−z·H₁(−z⁻¹)/2 and H₁(z)define an orthogonal wavelet transformation. The method of calculatingthe lifting parameters described above can also be used for calculatingthe parameters β_(0,i).

[0369] Finally, as has been seen for the HSS/HSA filters, the parameterγ is a function of the parameters β_(0,L) ⁰ ⁻¹ and is such that itguarantees that the equivalent low-pass filter H₀(z) of this low-passlifting step is HSS. The situation is similar for the orthogonalfilters: the parameter γ is a function of the parameters α_(0,i) andβ_(0,i) and is such that it guarantees that the equivalent low-passfilter H₀(z) of this low-pass lifting step is such thatH₀(z)=−z·H₁(−z⁻¹)/2. The method of calculating the lifting parametersdescribed above can also be used for calculating the parameter γ.

[0370] For transformation by forward lifting, all the values of theoutput signal Y are initialised to the values of the input signal X. Thesignal Y is then extended by one sample at each limit: in the examplesupplied here, use is made of an extension procedure known to a personskilled in the art as circular extension: y⁻¹=y₅ and y₆=y₀All thesubsequent steps are identical to those of the previous example, usingthe values given in equation (52).

[0371] For transformation by reverse lifting, all the values of theoutput signal X are initialised to the values of the input signal Y. Thesignal X is then extended by two samples at each limit: x⁻²=x₄, x⁻¹=x₅,x₆=x₀ and x₇=x₁.

[0372] All the subsequent steps are identical to those of the previousexample, using the values given in equation (52).

[0373] With regard to the application of the invention to theimplementation by lifting of any wavelet filters with equal support, theonly differences compared with what was described above for the HSS/HSAfilters and the orthogonal filters are as follows:

[0374] there is no dependency relationship between the parametersα_(0,i), β_(0,i), γ; it is therefore not necessary to calculate thesevalues in the RAM;

[0375] the first high-pass lifting step in the forward implementation bylifting can be any, that is to say: $\begin{matrix}{y_{{2n} + 1} = {y_{{2n} + 1} - {R\left( {\sum\limits_{i}{\delta_{i} \cdot y_{{2n} + {2i}}}} \right)}}} & (53)\end{matrix}$

[0376] where δ_(i) is a weighting coefficient.

[0377] It should be noted that, for example, if use is made, in theforward transformation, instead of equation (16), of the followingequation: $\begin{matrix}{y_{{2n} + 1} = {y_{{2n} + 1} - {R\left( \frac{y_{2n} + y_{{2n} + 2}}{2} \right)}}} & \left( {16a} \right)\end{matrix}$

[0378] then, in the reverse transformation, the last lifting step 620 isexactly its reverse, that is to say, in the above case: $\begin{matrix}{x_{{2n} + 1} = {x_{{2n} + 1} + {R\left( \frac{x_{2n} + x_{{2n} + 2}}{2} \right)}}} & (34)\end{matrix}$

[0379] All the lifting coefficients α_(0,i), β_(0,i), γ necessary forthe implementation by lifting of a pair of any wavelet filters withequal support can be obtained by means of the method of calculating thelifting parameters described above in relation to FIGS. 7 and 8. Thelifting coefficients δ_(i) are then the even-indexed coefficients of thefilter H₁(z) obtained from the formula (L_(k), α_(k,i), H₁,H₀)=UNLIFT_EQ(H₀,H₁) of step 714 illustrated in FIG. 7.

1. Filtering method adapted to transform an input digital signal (x_(n))into one or more output digital signals (y_(n)) having even-indexedsamples (y_(2n)) and odd-indexed samples (y_(2n+1)), said methodincluding at least one iteration (506) which contains an operation ofmodifying even-indexed samples (y_(2n)) by a function (R) of weightedodd-indexed samples (α_(0,j)·y_(2n+m) ^(j) ), an operation of modifyingodd-indexed samples (y_(2n+1)) by a function (R) of weightedeven-indexed samples β_(0,j)·(y_(2n)−y_(2n+2))), said weighted samplesbeing obtained by at least one weighting operation, said method beingcharacterised in that at least one of said weighting operations isapplied to the difference between two consecutive even-indexed samples.2. Filtering method according to claim 1, characterised in that saidoperation of modifying odd-indexed samples (y_(2n+1)) is performedfollowing said operation of modifying even-indexed samples (y_(2n)). 3.Filtering method according to claim 1 or 2, characterised in that saiditeration (506) consists notably of: weighting, by means of a firstweighting coefficient (α_(0,j)), at least one odd-indexed sample(y_(2n+m) ^(j) ) adjacent to an even-indexed sample currently beingmodified, so as to obtain a weighted odd-indexed sample(α_(0,j)·y_(2n+m) ^(j) ), modifying at least one even-indexed sample(y_(2n)) using at least one weighted odd-indexed sample(α_(0,j)·y_(2n+m) ^(j) ), weighting, by means of a second weightingcoefficient (β_(0,j)), even-indexed samples (y_(2n)−y_(2n+2)) adjacentto an odd-indexed sample currently being modified, so as to obtainweighted even-indexed samples (β_(0,j)·(y_(2n)−y_(2n+2))), and modifyingat least one odd-indexed sample (y_(2n+1)) using at least one weightedeven-indexed sample (β_(0,j)·(y_(2n)−y_(2n+2))).
 4. Filtering methodaccording to the preceding claim, characterised in that the secondweighting coefficient (β_(0,j)) is a function of the first weightingcoefficient (α_(0,j)).
 5. Filtering method according to the precedingclaim, characterised in that the second weighting coefficient (β_(0,j))depends on the first weighting coefficient (α_(0,j)) as follows:$\beta_{0,j} = {m_{j}/\left( {1 - {2{\sum\limits_{i = 0}^{j}\quad \alpha_{0,i}}}} \right)}$

where α_(0,i) designates the first weighting coefficient, β_(0,j)designates the second weighting coefficient, i and j are integers andm_(j) is a value defined by the recurrence m₀=(−1)^(L) ^(₀) andm_(j)=−m_(j−1), L₀ being a predetermined integer.
 6. Filtering methodaccording to any one of the preceding claims, characterised in that, ateach iteration, the odd-indexed sample (y_(2n+m) ^(j) ) adjacent to theeven sample currently being modified is alternately the sample of rankimmediately below (y_(2n−1)) or immediately above (y_(2n+1)). 7.Filtering method according to any one of the preceding claims,characterised in that it includes, at the end of said iteration (506),an additional filtering step (508) including an operation of weightingby means of a third weighting coefficient (γ).
 8. Filtering methodaccording to the preceding claim, characterised in that the thirdweighting coefficient (γ) is a function of the weighting coefficientused at the preceding step, as follows: γ=−1/(2β_(0,L) ⁰ ⁻¹) where γdesignates the third weighting coefficient, L₀ is a predeterminedparameter and β_(0,L) ⁰ ⁻¹ designates the weighting coefficient used atthe preceding step.
 9. Filtering method according to any one of thepreceding claims, characterised in that the digital input signal (x_(n))represents an image.
 10. Filtering method adapted to transform one ormore input digital signals (y_(n)) into an output digital signal(x_(n)), said input signals including even-indexed samples (y_(2n)) andodd-indexed samples (y_(2n+1)), said method including at least oneiteration (618) which contains an operation of modifying odd-indexedsamples (x_(2n+1)) by means of a function (R) of weighted even-indexedsamples (β_(0,j)·(x_(2n)−x_(2n+2))), an operation of modifyingeven-indexed samples (x_(2n)) by means of a function (R) of weightedodd-indexed samples (α_(0,j)·(x_(2n+m) ^(j) )), said weighted samplesbeing obtained by means of at least one weighting operation, said methodbeing characterised in that at least one of said weighting operations isapplied to the difference between two consecutive even-indexed samples.11. Filtering method according to the preceding claim, characterised inthat said operation of modifying even-indexed samples (x_(2n)) isperformed following said operation of modifying odd-indexed samples(x_(2n+1)).
 12. Filtering method according to claim 10 or 11,characterised in that said iteration (618) consists notably of:weighting, by means of a fourth weighting coefficient (β_(0,j)),even-indexed samples (x_(2n)−x_(2n+2)) adjacent to an odd samplecurrently being modified, so as to obtain weighted even-indexed samples(β_(0,j)·(x_(2n)−x_(2n+2))), modifying at least one odd-indexed sample(x_(2n+1)) using at least one weighted even-indexed sample(β_(0,j)·(x_(2n)−x_(2n+2))), weighting, by means of a fifth weightingcoefficient(α_(0,j)), at least one odd-indexed sample (x_(2n+m) ^(j) )adjacent to an even sample currently being modified, so as to obtain aweighted odd-indexed sample (α_(0,j)·x_(2n+m) ^(j) ), and modifying atleast one even-indexed sample (x_(2n)) using at least one weightedodd-indexed sample (α_(0,j)·x_(2n+m) ^(j) ).
 13. Filtering methodaccording to the preceding claim, characterised in that the fourthweighting coefficient (β_(0,j)) is a function of the fifth weightingcoefficient (β_(0,j)).
 14. Filtering method according to the precedingclaim, characterised in that the fourth weighting coefficient (β_(0,j))depends on the fifth weighting coefficient (α_(0,j)) as follows:$\beta_{0,j} = {m_{j}/\left( {1 - {2{\sum\limits_{i = 0}^{j}\quad \alpha_{0,i}}}} \right)}$

where α_(0,i) designates the fifth weighting coefficient, β_(0,j)designates the fourth weighting coefficient, i and j are integers andm_(j) is a value defined by the recurrence m₀=(−1)^(L) ^(₀) andm_(j)=−m_(j−1), L₀ being a predetermined integer.
 15. Filtering methodaccording to any one of claims 10 to 14, characterised in that, at eachiteration, the odd-indexed sample (x_(2n+m) ^(j) ) adjacent to the evensample currently being modified is alternately the sample of rankimmediately below (x_(2n−1)) or immediately above (x_(2n+1)). 16.Filtering method according to any one of claims 10 to 15, characterisedin that it includes, prior to said iteration (618), an additionalfiltering step (614) including an operation of weighting by means of asixth weighting coefficient (γ).
 17. Filtering method according to thepreceding claim, characterised in that the sixth weighting coefficient(γ) is a function of the weighting coefficient used at the followingstep, as follows: γ=−1/(2β_(0,L) ⁰ ⁻¹) where γ designates the sixthweighting coefficient, L₀ is a predetermined parameter and β_(0,L) ⁰ ⁻¹designates the weighting coefficient used at the following step. 18.Filtering method according to any one of claims 10 to 17, characterisedin that the digital output signal (x_(n)) represents an image. 19.Filtering method according to any one of the preceding claims,characterised in that the said modification operations consist ofapplying an approximation function (R).
 20. Filtering method accordingto the preceding claim, characterised in that the approximation function(R) is the identity function.
 21. Filtering method according to claim19, characterised in that the approximation function (R) is a functionof a real variable which supplies the closest integer to the variable.22. Filtering method according to claim 19, characterised in that theapproximation function (R) is a function of a real variable whichsupplies the first integer below the variable.
 23. Filtering methodaccording to claim 19, characterised in that the approximation function(R) is a function of a real variable which supplies the first integerabove the variable.
 24. Filtering method according to claim 19,characterised in that the approximation function (R) is a function of avariable decomposed into sub-variables whose sum is equal to thevariable, which supplies a sum of approximate values of thesub-variables, each of the approximate values of the sub-variablesbeing, either a function of a real variable which supplies the integerclosest to the variable, or a function of a real variable which suppliesthe first integer below the variable, or a function of a real variablewhich supplies the first integer above the variable.
 25. Signalprocessing device (10), characterised in that it has means adapted toimplement a filtering method according to any one of the precedingclaims.
 26. Digital filtering device adapted to transform an inputdigital signal (x_(n)) into one or more output digital signals (y_(n))containing even-indexed samples (y_(2n)) and odd-indexed samples(y_(2n+1)), said filtering device having at least one weighting module,means for modifying even-indexed samples (y_(2n)) by means of a function(R) of weighted odd-indexed samples (α_(0,j)·y_(2n+m) ^(j) ), means formodifying odd-indexed samples (y2n+1) by means of a function of weightedeven-indexed samples (β_(0,j)·(y_(2n)−y_(2n+2))), said weighted samplesbeing supplied by said weighting means, said modification meansfunctioning iteratively, so as to modify even-indexed samples (y_(2n))at least once and then odd-indexed samples (y_(2n+1)) at least once,said filtering device being characterised in that at least one of saidweighting means receives as an input the difference between twoconsecutive even-indexed samples.
 27. Filtering device according to thepreceding claim, characterised in that said means for modifyingodd-indexed samples (y_(2n+1)) are disposed downstream of said means formodifying even-indexed samples (y_(2n)).
 28. Filtering device accordingto claim 26 or 27, characterised in that it has: means for weighting, bymeans of a first weighting coefficient (α_(0,j)), at least oneodd-indexed sample (y_(2n+m) ^(j) ) adjacent to an even sample currentlybeing modified, so as to obtain a weighted odd-indexed sample(α_(0,j)·y_(2n+m) ^(j) ), means for modifying at least one even-indexedsample (y_(2n)) from at least one weighted odd-indexed sample(α_(0,j)·y_(2n+m) ^(j) ), means for weighting, by means of a secondweighting coefficient (β_(0,j)), even-indexed samples (y_(2n)−y_(2n+2))adjacent to an odd sample currently being modified, so as to obtainweighted even-indexed samples (β_(0,j)·(y_(2n)−y_(2n+2))), and means formodifying at least one odd-indexed sample (y_(2n+1)) using at least oneweighted even-indexed sample (β_(0,j)·(y_(2n)−y_(2n+2))).
 29. Filteringdevice according to the preceding claim, characterised in that thesecond weighting coefficient (β_(0,j)) is a function of the firstweighting coefficient (α_(0,j)).
 30. Filtering device according to thepreceding claim, characterised in that the second weighting coefficient(β_(0,j)) depends on the first weighting coefficient (α_(0,j)) asfollows:$\beta_{0,j} = {m_{j}/\left( {1 - {2{\sum\limits_{i = 0}^{j}\alpha_{0,i}}}} \right)}$

where α_(0,i) designates the first weighting coefficient, β_(0,j)designates the second weighting coefficient, i and j are integers andm_(j) is a value defined by the recurrence m₀=(−1)^(L) ^(₀) andm_(j)=−m_(j−1), L₀ being a predetermined integer.
 31. Filtering deviceaccording to any one of claims 26 to 30, characterised in that, at eachiteration, the odd-indexed sample (y_(2n+m) ^(j) ) adjacent to the evensample currently being modified is alternately the sample of rankimmediately below (y_(2n−1)) or immediately above (y_(2n+1)). 32.Filtering device according to any one of claims 26 to 31, characterisedin that it has additional filtering means including means of weightingby means of a third weighting coefficient (γ).
 33. Filtering deviceaccording to the preceding claim, characterised in that the thirdweighting coefficient (γ) is a function of a weighting coefficient usedupstream of said additional filtering means, as follows: γ=−1/(2β_(0,L)⁰ ⁻¹) where γ designates the third weighting coefficient, L₀ is apredetermined parameter and β_(0,L) ⁰ ⁻¹ designates the weightingcoefficient used upstream of said additional filtering means. 34.Filtering device according to any one of claims 26 to 33, characterisedin that the input digital signal (x_(n)) represents an image. 35.Digital filtering device adapted to transform one or more input digitalsignals (y_(n)) into an output digital signal (x_(n)), said inputsignals containing even-indexed samples (x_(2n)) and odd-indexed samples(x_(2n+1)), said filtering device having at least one weighting means,means for modifying odd-indexed samples (x_(2n+1)) by means of afunction of weighted even-indexed samples (β_(0,j)·(x_(2n−x) _(2n+2))),means for modifying even-indexed samples (x_(2n)) by means of a function(R) of weighted odd-indexed samples (α_(0,j)·x_(2n+m) ^(j) ), saidweighted samples being supplied by said weighting means, saidmodification means functioning iteratively, so as to modify odd-indexedsamples (x_(2n+1)) at least once and then even-indexed samples (x_(2n))at least once, said filtering device being characterised in that atleast one of said weighting means receives as an input the differencebetween two consecutive even-indexed samples.
 36. Filtering deviceaccording to the preceding claim, characterised in that said means formodifying even-indexed samples (x_(2n)) are disposed downstream of saidmeans for modifying odd-indexed samples (x_(2n+1)).
 37. Filtering deviceaccording to claim 35 or 36, characterised in that it has: means forweighting, by means of a fourth weighting coefficient (β_(0,j)),even-indexed samples (x_(2n)−x_(2n+2)) adjacent to an odd samplecurrently being modified, so as to obtain weighted even-indexed samples(β_(0,j)·(x_(2n)−x_(2n+2))), means for modifying at least oneodd-indexed sample (x_(2n+1)) using at least one weighted even-indexedsample (β_(0,j)·(x_(2n)−x_(2n+2))), means for weighting, by means of afifth weighting coefficient (β_(0,j)), at least one odd-indexed sample(x_(2n+m) ^(j) ) adjacent to an even sample currently being modified, soas to obtain a weighted odd-indexed sample (α_(0,j)·y_(2n+m) ^(j) ) andmeans for modifying at least one even-indexed sample (y_(2n)) using atleast one weighted odd-indexed sample (α_(0,j)·x_(2n+m) ^(j) ). 38.Filtering device according to the preceding claim, characterised in thatthe fourth weighting coefficient (β_(0,j)) is a function of the fifthweighting coefficient (α_(0,j)).
 39. Filtering device according to thepreceding claim, characterised in that the fourth weighting coefficient(β_(0,j)) depends on the fifth weighting coefficient (α_(0,j)) asfollows:$\beta_{0,j} = {m_{j}/\left( {1 - {2{\sum\limits_{i = 0}^{j}\alpha_{0,i}}}} \right)}$

where α_(0,i) designates the fifth weighting coefficient, β_(0,j)designates a fourth weighting coefficient, i and j are integers andm_(j) is a value defined by the recurrence m₀=(−1)^(L) ⁰ andm_(j)=−m_(j−1), L₀ being a predetermined integer.
 40. Filtering deviceaccording to any one of claims 35 to 39, characterised in that, at eachiteration, the odd-indexed sample (x_(2n+m) ^(j) ) adjacent to the evensample currently being modified is alternately the sample of rankimmediately below (x_(2n−1)) or immediately above (x_(2n+1)). 41.Filtering device according to any one of claims 35 to 40, characterisedin that it also has additional filtering means including means ofweighting by means of a sixth weighting coefficient (γ).
 42. Filteringdevice according to the preceding claim, characterised in that the sixthweighting coefficient (γ) is a function of the weighting coefficientused downstream of said additional filtering means, as follows:γ=−1/(2β_(0,L) ⁰ ⁻¹) where γ designates the sixth weighting coefficient,L₀ is a predetermined parameter and β_(0,L) ⁰ ⁻¹ designates theweighting coefficient used downstream of said additional filteringmeans.
 43. Filtering device according to any one of claims 35 to 42,characterised in that the digital output signal (x_(n)) represents animage.
 44. Filtering device according to any one of claims 26 to 43,characterised in that said modification means have means for applying anapproximation function (R).
 45. Filtering device according to thepreceding claim, characterised in that the approximation function (R) isthe identity function.
 46. Filtering device according to claim 44,characterised in that the approximation function (R) is a function of areal variable which supplies the integer closest to the variable. 47.Filtering device according to claim 44, characterised in that theapproximation function (R) is a function of a real variable whichsupplies the first integer below the variable.
 48. Filtering deviceaccording to claim 44, characterised in that the approximation function(R) is a function of a real variable which supplies the first integerabove the variable.
 49. Filtering device according to claim 44,characterised in that the approximation function (R) is a function of avariable decomposed into sub-variables whose sum is equal to thevariable, which supplies a sum of approximate values of thesub-variables, each of the approximate values of the sub-variablesbeing, either a function of a real variable which supplies the integerclosest to the variable, or a function of a real variable which suppliesa first integer below the variable, or a function of a real variablewhich supplies the first integer above the variable.
 50. Signalprocessing device (2, 5), characterised in that it includes a filteringdevice according to any one of claims 26 to
 49. 51. Signal processingdevice (2, 5) including at least two filtering devices according to anyone of claims 26 to 49, the output signal of one of the filteringdevices being the input signal of the other filtering device. 52.Digital apparatus, characterised in that it includes a signal processingdevice according to any one of claims 25, 50 and
 51. 53. Digitalphotographic apparatus, characterised in that it includes a signalprocessing device according to any one of claims 25, 50 and
 51. 54.Encoding method, characterised in that it includes steps adapted toimplement a filtering method according to any one of claims 1 to
 24. 55.Encoding device, characterised in that it includes at least onefiltering device according to any one of claims 26 to
 49. 56. Digitalsignal compression method, characterised in that it includes stepsadapted to implement a filtering method according to any one of claims 1to
 24. 57. Digital signal compression device, characterised in that itincludes at least one filtering device according to any one of claims 26to
 49. 58. An information storage means, possibly removable, which canbe read by a computer or by a microprocessor, and which stores aprogram, characterised in that it comprises means adapted to implement afiltering method according to any one of claims 1 to
 24. 59. A computerprogram product, characterised in that it contains sequences ofinstructions for implementing a filtering method according to any one ofclaims 1 to 24.